package com.freemalll.merchant.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.freemalll.merchant.common.AbstractBaseEntity;
import com.freemalll.merchant.common.CompareField;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;

/**
 * <p>
 * 商户经营信息
 * </p>
 *
 * @author songshixiong
 * @since 2025-06-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("mer_run_info")
@Schema(description = "MerRunInfo对象")
public class MerRunInfo extends AbstractBaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "主键")
    @TableId(value = "run_id", type = IdType.ASSIGN_UUID)
    @CompareField(value = "run_id", skip = true)
    private String runId;

    @Schema(description = "所属商户")
    @TableField("mer_id")
    @CompareField(value = "mer_id", skip = true)
    private String merId;

    @Schema(description = "年营业额(万元)")
    @TableField("mer_annual_turnover")
    @CompareField("mer_annual_turnover")
    private Integer merAnnualTurnover;

    @Schema(description = "医师数量")
    @TableField("mer_physician_num")
    @CompareField("mer_physician_num")
    private Integer merPhysicianNum;

    @Schema(description = "教师人数")
    @TableField("mer_teacher_num")
    @CompareField("mer_teacher_num")
    private Integer merTeacherNum;

    @Schema(description = "员工数量")
    @TableField("mer_staff_num")
    @CompareField("mer_staff_num")
    private Integer merStaffNum;

    @Schema(description = "门店数量")
    @TableField("store_number")
    @CompareField("store_number")
    private Integer storeNumber;

    @Schema(description = "手术室数量")
    @TableField("mer_operation_room_num")
    @CompareField("mer_operation_room_num")
    private Integer merOperationRoomNum;

    @Schema(description = "月客流量（人次）")
    @TableField("monthly_customer_flow")
    @CompareField("monthly_customer_flow")
    private Integer monthlyCustomerFlow;

    @Schema(description = "月新客数（人）")
    @TableField("monthly_customer_new")
    @CompareField("monthly_customer_new")
    private Integer monthlyCustomerNew;

    @Schema(description = "客服电话")
    @TableField("customer_phone")
    @CompareField("customer_phone")
    private String customerPhone;

    @Schema(description = "主要客群年龄段")
    @TableField("mer_main_customer_age")
    @CompareField("mer_main_customer_age")
    private String merMainCustomerAge;

    @Schema(description = "客单价")
    @TableField("mer_cust_average_money")
    @CompareField("mer_cust_average_money")
    private Double merCustAverageMoney;

    @Schema(description = "线上平台")
    @TableField("online_platform")
    @CompareField("online_platform")
    private String onlinePlatform;

    @Schema(description = "项目清单")
    @TableField("project_list")
    @CompareField("project_list")
    private String projectList;

    @Schema(description = "广告投放")
    @TableField("advertisement")
    @CompareField("advertisement")
    private String advertisement;

}
